Table of Contents
IN3 Table of Contents

     About IN CUBE

     Build Templates

     Demo Introduction

     Demo Templates

     Demonstration Mode

     Keys and Commands

     Menu selections

     New Command

     Registering by E-Mail

     Registering by FAX

     Registering IN CUBE

     Software License Agreement

     Update Command

     View Commands


IN3 Menu Selections

Commands

     File    	File Action Menu

     Edit    	Edit Commands Menu

     View    	View Commands

     Options 	Options Menu


File Menu

     New   	Create New Lexicon

     Open 	Open Existing Lexicon

     Save 	Save Current Lexicon

     Save As 	Save Lexicon Under Another Name

     Merge 	Merge Another Lexicon into Current Lexicon

     Print   	Print Lexicon

     Exit     	Exit IN3


Edit Menu

     New Command 	Add a new command

     Update Command 	Change an existing command

     Delete Command(s) 	Delete one or more commands

     Build Templates 	Create or refine voice templates


View Menu

     By Commands     	View Lexicon, organized by commands


Options Menu

     Microphone Active      	Turn Microphone on/off

     Audio Messages Active 	Enable audio messages

     Recognition Active         	Enable/Disable recognition

     Autosave Changes         	Automatically save lexicon edits

     Always on Top              	Anchor In3 on top

     Beep                                   	Change Beep Options

     Save Options                 	Save user options


Beep Menu

     Microphone on/off           	Beep when microphone turns on/off

     No word recognized      	Beep when no word was recognized


New Lexicon
New

Use the New selection to begin building a new lexicon.  When you select New, a status window appears with one command _MICROPHONE.  Use the Save As selection to name and save the new lexicon.


Open Lexicon
Open

Command Lexicons are stored in files on your hard disk or on floppy disks.  The Open command activates a dialog box which provides convenient access to drives, directories and files.  Lexicon files are identified in the dialog box by the lexicon name and a .vcb extension.  When you open a lexicon, IN3 also locates and loads the .sub file.  If voice templates have been built, the .tpl file will also be loaded.


Save Lexicon
Save

Save changes to the currently loaded lexicon by selecting Save.


Save As Lexicon
Save As

To change the name of a lexicon or to change the drive or directory in which a lexicon is stored, select Save As and enter the new information into the dialog box that is activated.  IN3 places the .vcb extension onto the lexicon name you designate.


Merge Lexicon
Merge

Lexicons may be merged to form larger lexicons.  To merge lexicons, open one of the lexicons using the Open command.  Select Merge to activate a dialog box.  Select the lexicon to be merged into the first lexicon and pick OK.  Another dialog box will offer you a choice to merge voice templates or omit the templates.  When you make the choice the merge will be complete and the IN3 Status Window will be activated with the newly merged lexicon loaded.


Print Lexicon
Print

A hard copy of your lexicon may be useful for reviewing commands, developing complex applications, and making extensive changes.  Select Print to begin a printout of the currently open lexicon.

IN3 Voice Command's print routine sends the print job to the Windows Print Manager.

Print produces a hard copy of the lexicon showing "keystrokes" listed by command.


Exit IN3
Exit

Selecting Exit stops IN3 speech recognition and closes the IN3 Status Window.


New Command

Select New Command to open a New Command Dialog box to add a command to the current lexicon.


Update Command

Select Update command to change the command name or the keystrokes to be executed.  Selecting Update command will activate the Update Command Dialog box.  The Command name field is highlighted and there is a scroll arrow in the field.  Click on the scroll arrow to access the Command name list and then select the command you want to update.  Click the mouse on the field you wish to edit and remove unwanted characters using backspace or delete.


Delete Command
Delete Command(s)

Delete one or more commands from a lexicon by first selecting the commands in the IN3 Status Window.  Then select Delete commands.


Build Templates

Use the Build Templates selection to create new voice templates or to refine existing templates.  When the Build Templates Dialog box is activated, default settings appear for Template and Selection based on the status of the templates in the lexicon.

Default settings are as follows:

1.  If no templates exist, "Create"  "All"

2.  If templates exist for all commands, "Refine"  "All"

3.  If only some templates exist, "Create"  "Selected"

4.  If all templates exist and some commands are highlighted in the IN3 Status Window, "Refine"  "Selected"


View By Commands

To view a list of commands organized in alphabetical order, pick View By commands.  The View Dialog box will then list the current Lexicon, organized by command name.


Microphone Active

To manually toggle the microphone switch off or on, select Microphone active.  The voice operated microphone switch remains in operation any time recognition is active, so the switch may be toggled either manually or by voice.

The status of the microphone switch is indicated by the lips in the IN3 Status Window or by the icon.  When the microphone is on the lips are red.  When the microphone switch is turned of, the lips turn black.


Audio Messages Active

IN3 Voice Command provides optional audio announcements to assist the new user.  When installed, these announcements are set to play any time IN3 is started up with a lexicon which has no templates, by default.  The "IN CUBE is ready" message, when installed, plays when recongition is first enabled.  To turn the announcements off, toggle Audio messages active.

Use the Save options selection to change the Audio messages setting for the next startup.


Recogtion Active
Recognition Active

When a lexicon which has voice templates is opened, IN3 automatically activates recognition.  To deactivate recognition, toggle Recognition active.

Use the Save options selection to change the default status.


Autosave Changes

When enabled, IN3 automatically saves any changes made to the active Lexicon.  This may be add, deleting, or changing commands as well as building or updating templates.  When disabled, changes are only saved when the File Save menu selection is chosen.

Use the Save options selection to change the default status.


Always on Top

If you want the IN3 Status Window and the IN3 icon to always be visible, select Always on Top.  Use Save options to set the new default.


Save Options

Use Save options to change the default setup for the user selectable options.  The state of "Audio messages active", "recognition active", the "beep" flags, and "Always on Top" may be saved as well as the name of the current Lexicon.  The name and path saved for the current Lexicon will be used as the initial Lexicon automatically opened when In3 is started up next.


IN CUBE Registration

Use the "IN CUBE Registation" menu selection to view, set, or change the registration information for your copy of IN CUBE.


Beep on microphone on/off

Enable or disable an audible "beep" whenever the voice operated microphone switch is activated or deactivated.  When the microphone is activated by voice, a double beep will be generated.  When the microphone is deactivated by voice, a single beep will be generated.

The status of the microphone switch is indicated by the lips in the IN3 Status Window or by the icon.  When the microphone is on the lips are red.  When the microphone switch is turned of, the lips turn black.

Use Save options to save this as the new default.


Beep on no word recognized

Generate a single high pitch "beep" whenever something was heard but no word was be recognized.

Use Save options to save this as the new default.


Update Command Dialog

Use the Update Command Dialog box to review and revise the commands in a lexicon.  Commands are organized alphabetically by command name.  To select a command to review or update, click on the scroll arrow to the right of the Command Name field.  A list of the commands in the lexicon appears.  When you select a command from the list, all of the keystroke information is placed in the dialog box.

Any combination of keystrokes up to a total of 64 per command can be executed when a command is recognized.  Use the keyboard to enter alphanumeric characters.  Use the mouse to pick the commonly used modifier keys (Ctrl, Shift, and Alt).  Then enter the key to be modified.  To pick other modifier keys, click on the scroll arrow to the right of the Other keys field and then select the desired keys from the list.

The "Window Class" button is used to determine the window class name of another windows displayed on the screen for window management commands.

Use backspace and delete to edit the fields.  Then pick OK.  IN3 automatically saves your changes.

Further information on keystroke syntax is contained in the Keys Help selection under Help.


Build Templates Dialog

Use the Build Templates selection to create new voice templates or to refine existing templates.  When the Build Templates Dialog box is activated, default settings appear for Template and Selection based on the status of the templates in the lexicon.

Default settings are as follows:

1.  If no templates exist, "Create"  "All"

2.  If templates exist for all commands, "Refine"  "All"

3.  If only some templates exist, "Create"  "Selected"

4.  If all templates exist and some commands are highlighted in the IN3 Status Window, "Refine"  "Selected"

You can change these default settings to perform any operation you need.

Position your microphone and be sure the microphone gain is set properly.  When you select Begin, the system will prompt you to speak commands.  The Begin button will change to Pause.

You may pause while creating or refining templates by clicking on the Pause button.  At that time the Pause button will change to Resume and the system will wait for further action.  Clicking on the Resume button will then return to the creation or refining process where it was left off.

You may stop the create or refine templates operation at any time by clicking on Cancel.  Templates which have been successfully created or refined are retain.  Other templates, not successfully created or refined, are not affected when the operation is cancelled.

When the build process is completed, IN3 automatically saves your templates and reactivates recognition.

Note that noise which occurs during this process will be converted to data and your templates may be adulterated.  So do your best to avoid introducing noise into the templates.


View Commands Dialog
View Dialog

Use View Dialog and View By commands to review a lexicon.

The window space available under this selection is limited and therefore the information that may be displayed is also limited.  For more complete information on the lexicon, either use the Update commands dialog box or print a copy of the lexicon.


New Command Dialog

Lexicons are built by adding commands.  When you pick the New command selection, the New Command Dialog box is activated.

Position the cursor in the Command name field and type the command to be spoken.  In selecting the word or words to speak, try to identify the word or term that the user naturally associates with the command or operation.  Avoid stepping through menu hierarchies and think in terms of "voice macros".  Avoid long phrases.

After entering the command, hit Tab on the keyboard.  If you hit Enter by mistake and close the dialog box, you can pick Edit and Update command then finish entering the command in update mode.

In the Keystrokes field, enter the series of keystrokes that will execute the command or voice macro.  Any combination of keystrokes up to a total of 64 per command can be executed when a command is recognized.  Use the keyboard to enter alphanumeric characters.  Use the mouse to pick the commonly used modifier keys (Ctrl, Shift, and Alt).  Then enter the key to be modified.  To pick other modifier keys, click on the scroll arrow to the right of the Other keys field and then select the desired keys from the list.

The "Window Class" button is used to determine the window class name of another windows displayed on the screen for window management commands.

Complete information on keystroke syntax is contained in Keys Help under Help.

Use backspace and delete to edit the fields.  Then pick OK.  IN3 automatically saves your changes.


About In3

IN3 Voice Command
Copyright 1993,1994
All rights reserved

Command Corp. Inc.
3761 Venture Drive
Duluth, GA 30136


Extended Help - READ ME
IN3

IN3 Voice Command System - Copyright 1992,93 Command Corp. Inc., All rights reserved.

Welcome to the IN3 (pronounced IN CUBE) Voice Command System for Windows!  We hope you enjoy this opportunity to use Command Corp's word spotting speech recognition technology.  The voice commands included with the starter lexicons execute operations most of us use frequently so we hope you will use the voice input in your everyday work.

1.0          START-UP INFORMATION

Before running IN3, make sure you can record and playback messages using your Windows-compatible audio system.  Optimizing the gain for IN3 is discussed later in this document.

1.1  Installation

IN3 Voice Command runs on any IBM compatible 386, 486 or Pentium system with Windows 3.1.  IN3 requires approximately 1 Mbyte of disk space for all of its components.

The IN3 Setup performs all operations neccessary to successfully complete installation of IN3 and add it to your windows configuration.

1.2  Microphones

IN3 Voice Command speech recognition technology creates a voice template for each command.  Then, in recognition mode, it compares and matches those templates to data coming from the microphone.  The comparison is performed continuously and in real time.  Templates created in a reasonably quiet environment with a strong voice signal will be well-matched even in the presence of typical office noise.

Most microphones are designed for "close talking."  If you position the mike close and build your voice templates with a strong signal in a quiet environment, recognition performance will be virtually 100% accurate.  But if you move away from the mike, your voice signal will be progressively reduced and it may become too weak to create a distinctive voice template.

Command Corp. Inc. supplies desk-mounted and headset microphones for optimum performance with speech recognition.  Some of these are designed for speaking distances of six to sixteen inches, and they perform very well in a normal office environment.

Contact Command Corp. Inc. at (404) 813-8030 for additional information.

1.3  Audio Boards

IN3 Voice Command runs with most 8 and 16 bit Windows compatible audio boards.  In selecting an audio board for use with IN3, choose a board that reproduces audio relatively free of static and hum.  Also, choose a board which has efficient Windows drivers.  Many audio board manufacturers have updated Windows drivers for their older as well as more recently released boards.

Check with the manufacturer's support group or bulletin board and update your drivers to the latest available revisions.

1.4  Setting Audio Record Gain

IN3 Voice Command requests and receives digital data from your audio board in the same manner as if you were making a recording.  Since various audio boards have different sampling rates and sample size, IN3 automatically uses the best rate and sample size available from each board.

Sampling rate and size are selected by IN3 in the following order:

1.  8KHz  16 bit         (preferred)
2.  11KHz 16 bit
3.  8KHz  8 bit
4.  11KHz 8 bit          (least preferred)

If your record/playback tool permits adjustment of sampling rate and sample size, pick the most preferable rate and size available according to the listing above.

Use the record and playback tool provided with your audio board to make a test recording.  Then use the audio record gain adjustment or "mixer" supplied with your board to adjust the gain for optimum performance.

Speaking in a normal and relaxed voice, record a one or two second test message.  Play the message back and note whether the signal is clear and strong or weak and distorted.  The best setting is the one which produces the strongest undistorted signal with the least hum, static or background noise.  If your record/playback tool provides a graphic representation of the recording, set your record gain so the loudest peaks created in your normal speaking voice just approach, but do not reach, the upper and lower limits of your wave form viewer.  If background noise or system noise is excessive at this gain setting, either reposition the microphone closer to your mouth or reduce the record gain setting, or do both.

Be sure to save the gain setting using the save utility included with your audio board.  This will insure that the record gain is set to the same value each time you start up.

When you have finished setting the record gain, exit from the record/playback application.  This will permit IN3 Voice Command to request and receive audio data from the board.

The microphones which are provided with audio boards can be used with IN3 Voice Command if you exercise a little care.  Testing indicates that optimum performance is achieved when voice templates are created with the mike positioned 4 to 6 inches from the speaker's mouth.

1.5  Running The Starter Lexicons

IN3 installs with optional starter and demonstration lexicons. When you double click on the IN3 icon for the first time, the IN3 window opens up with the initial demo lexicon.  You may then create templates for these commands or select another one of the starter lexicons by selecting "File" then "Open".

1.6  Building Templates

Select the Edit button, and then select the Build Templates option to create your voice templates for each command in the lexicon.

When the Build Templates window opens, two mode selections appear.  IN3 defaults to either ALL or SELECTED mode depending on whether it senses that some templates already exist or there are none.  In SELECTED mode, the system will prompt you to build templates only for those commands needing templates.  If you wish to replace some but not all existing command templates with new ones, highlight the commands in the Status Window before entering the Build Templates Window and then use Selected Mode.

Position your microphone, then in CREATE mode click on Begin. You will be prompted to repeat each command twice.  When you have spoken all commands twice, you will then be prompted to repeat each command one more time.

The Begin button becomes a Pause/Resume button, for use if you are interrupted.

In order to optimize the template data, you are required to provide a somewhat stronger audio signal when you are Building or Refining templates.  When in recognition mode you will be able to speak more softly and you will still obtain very good performance.  If during the process of building or refining templates, IN3 receives a weak signal, the build process will be suspended and a message "Audio Input Level Is Too Low" will appear.  Either reposition the microphone so it is closer to your mouth or speak more loudly in order to provide a stronger signal.

1.7  Operation

Once all templates have been created, you are ready to test recognition.  Do not Exit from the IN3 Status Window.  If you Exit the IN3 Status Window, IN3 Voice Command will shut down.

IN3 may be minimized to an icon which will not shut it down.

The Status Window contains a list of the commands in the lexicon for use as a reminder.  Notice that the Status line at the bottom of the window says Recognition is active.  As you test recognition by speaking commands, the Status line will indicate each command that is recognized.

The first command in the Status Window, _MICROPHONE, is your voice operated microphone switch.  When IN3 loads a lexicon, the microphone is on and the lips in the upper right hand corner are red.  Say "Microphone" and the switch is turned off.  The lips change from red to black indicating the microphone is off.  Say "Microphone" again to turn the mike back on and the lips return to red.  A beep also sounds when the microphone switch is activated.

One beep indicates the switch has been turned off and two beeps signal it has been turned back on.

1.8 Testing IN3 Voice Command

With the demo lexicon open, test the commands to verify that Calendar, Clock, Command Shell, Calculator, etc. are working.  Then manipulate the windows by using the commands.

Voice template features are established by energy patterns rather than frequencies, so there is no need to speak in a monotone. Test this aspect of the IN3 System performance by saying a few of the commands with different pitches.

The IN3 System will recognize a command even though it is embedded in a continuous sentence.  To test this, say, "Give me the calendar please."  If you spoke naturally when you created the voice template for calendar, the system will recognize and execute calendar even though it is embedded in a sentence.

1.9 Tips on IN3 Recognition

New users sometimes try to "help" IN3 by speaking loudly and very distinctly when building templates and testing.  As a result, the templates may work fine while testing but later in normal use when the user is relaxed and speaking softly, some commands may not be recognized.  So when building templates try to relax and speak normally.

If IN3 Voice Command tends to falsely recognize one or more commands, the template(s) probably contain noise.  To correct this, use the mouse to highlight the command in the IN3 Status Window.  Select Edit from this window, choose Build Templates, select Create Mode, and create a new template.  For best results, do this at a quiet time and position the mike so it picks up a good strong signal.

If creating a new template does not correct the problem, your record gain may be set too high.  Try reducing the gain until the problem is solved.

Command Corp. Inc.

3761 Venture Drive

Duluth, GA 30136

Phone 	(404) 813-8030

FAX   	(404) 813-0113

E-Mail 	in3@gacc.atl.ga.us


Keystroke Help

Keystroke Modes and Command Mode

IN3 Voice Command provides two types of control for manipulating the Windows interface and for entering commands or data to applications running under Windows.  These modes, known as Keystroke Mode and Command Mode, are described in detail below.

Keystroke Mode

In Keystroke Mode, IN3 enters keystroke information corresponding to data, menu accelerator keys, or key sequences for voice macros into the system key queue.  The information entered to the key queue is in the form of key scan codes.  Keystroke Mode is the default mode for most voice macro commands.

Any combination of keys from the PC enhanced keyboard can be entered.  In order for IN3 to recognize modifier keys among keystroke strings, the modifier keys, {Ctrl}, {Alt}, {Shift}, and the other Special keys such as {enter}, {tab}, etc. are placed in braces.  Function keys are also identified by braces.  {F1}, {F2}, are examples.  In building a lexicon, these keys may be typed on the "Keystrokes" line using braces or they may be selected using the mouse from the scroll list in the dialog box.  A brace may be entered in the keystream by doubling (i.e. "{{").

Command Mode

IN3 provides a powerful facility called Command Mode which provides window manipulation, job execution, and lexicon reloading.  Commands may be combined and made conditional upon success or failure of previous commands.  Combined commands may employ up to a maximum of 64 keystrokes for each recognized command.

Command mode is invoked when the first character in the command string is a '>' (greater than symbol) and the second character is anything else.  If both the first and second characters are '>' symbols, the string is processed as a keystroke sequence with one of the '>' characters and Command Mode is not entered.  This technique, called doubling, allows keystroke sequences to begin with a '>'.  The '>' is significant only in character position one on.  Anywhere else in a keystroke sequence it is treated as a simple character and nothing special is performed.

Command Mode processing begins with the character following the '>' in position 1.  A command and one parameter are parsed off.  The parameter may be a quoted string and if it contains embedded white space (space, tab, backspace, formfeed, etc) it must be enclosed in double quotes.  A double quote may be entered in a string by doubling.

The string matching is always performed in a case sensitive manner.  Strings which are not capitalized the same do not match.

Command Mode Commands must be entered in lower case.  An invalid command terminates command processing at that point.

Command Mode Commands

class "Window Class" - Locate a window with a window class matching the "Window Class" parameter.  If a window can be located which is already open, it is raised to the top of the window stack and focus is transferred to it.  If an open window can not be located, but a window does exist which is iconified, the iconified window is opened and then processed as before.  If neither an open window or an iconified window can be located, the command fails.   The "class" command can only open a window with the "visible" attribute and cannot open a "hidden" window.   Use the "Window Class" button in the New Command or Update Command dialog to determine the class name of a window.

echo "string" - Enters the string parameter into the system keyboard queue just the same as a simple keystroke sequence.  This is the ONLY function with allows non-ascii characters to be embedded in the parameter string.

exec "command string" - passes the parameter string to windows for execution.  This performs the same operation as the "run" function from the "progman" program manager.  The "exec" command succeeds if the program can be successfully started and fails otherwise.

title "Window Title" - Performs the same function as the "class" command but on a window with a window title matching the "Window Title" parameter.

open "filename" - passes the filename parameter to the In3 user interface to be opened as a new lexicon.  The file name may be a complete drive and path or may be a simple lexicon to be found in the same directory as the current lexicon.  It is not necessary to supply and extension on the lexicon name.  Command succeeds if recognition can be restarted with the new lexicon and fails otherwise.

Command Sequences:

Commands are executed sequentially until a command succeeds.  Software developers will recognize this as equivalent to a logical "OR" operation which permits IN3 to handle compound commands.

Example 1:

>title "Cardfile (PHONELST.CRD)" exec "cardfile.exe phonelst.crd"

IN3 will first attempt to raise an existing window with the title "CardFile (phonelst)".  Failing that, it will attempt to execute the cardfile.exe command with a parameter for the "phonelst.crd" card file.

Example 2:

>title "WordPerfect myfile.wp5 (unmodified)" title "WordPerfect myfile.wp5"

IN3 will first attempt to raise a WordPerfect window with an unmodified document title.  If that fails, it will attempt to raise a window with the modified document.

Command Separators:

The following separators control the execution of commands in series:

{Space}	As described in Command Sequences above results in commands being executed sequentially until a command succeeds.

;	Executes the next command always

&	Executes the next command if current status is true else end command block

|	Executes the next command if current status is false else end command block

~	Invert status (true -> false ; false -> true)

Nesting Blocks of Commands:

{	Begins a command block

}	Ends a command block


Window Class Names

Window class names are used by the "class" window function in command mode.  The "Window Class" button in the New Command or Update Command dialog windows may be used to determine the window class name of another window currently being displayed and enter it in the keystroke line for the command.

When the "Window Class" button is activated, the cursor changes to cross-hairs.  Position the cross-hairs over the title bar or icon of the window you want the name of.  When you then click any mouse button, the window class name of that window is inserted into the keystroke line of the command window.

Positioning the cursor over other areas of a window may return the class name of the common child window structures used by that window.  Clicking over a "button" will return "Button".  "List Box", "Static", and "Combo Box" are examples of other class names that may appear if you select structures within a window.


Demo Mode Introduction
IN CUBE Demo - Introduction

START-UP INFORMATION

Before installing IN3, make sure you can record and playback messages using your Windows-compatible audio system.  Optimizing the gain for IN3 is discussed later in this document.

Installation

The full working IN3 Voice Command product is a continuous speech recognizer which handles lexicons of up to 75 commands and runs on IBM compatible 386, 486 or Pentium systems with Windows 3.1 and Windows for Workgroups.  Any of the commands in a lexicon may be used to execute the "Open" function to open another lexicon of up to 75 commands, so there is abundant capacity.  This IN3 Demo provides a basic demonstration lexicon of 20 commands with additional sample 26 command lexicons for WordPerfect and Word.  IN CUBE requires approximately 1 Mbyte of disk space for all of its components.

All you need to do, having already unpacked the files, is select "File" and "Run" from the Program Manager Menu.

Type in: "<pathname where unpacked files reside>\setup"

Then follow the prompts.

Microphones

IN3 Voice Command speech recognition technology creates a voice template for each command.  Then, in recognition mode, it compares and matches those templates to data coming from the microphone.  The comparison is performed continuously and in real time.  Templates created in a reasonably quiet environment with a strong voice signal will be well-matched even in the presence of typical office noise.

Most microphones are designed for "close talking."  If you position the mike close and build your voice templates with a strong signal in a quiet environment, recognition performance will be virtually 100% accurate.  But if you move away from the mike, your voice signal will be progressively reduced and it may become too weak to create a distinctive voice template.

Command Corp. Inc. supplies desk-mounted and headset microphones for optimum performance with speech recognition.  Some of these are designed for speaking distances of six to sixteen inches, and they perform very well in a normal office environment.

Contact Command Corp. Inc. at (404) 813-8030 for additional information.

 Audio Boards

IN3 Voice Command runs with most 8 and 16 bit Windows compatible audio boards.  In selecting an audio board for use with IN3, choose a board that reproduces audio relatively free of static and hum.  Also, choose a board which has efficient Windows drivers.  Many audio board manufacturers have updated Windows drivers for their older as well as more recently released boards.

Check with the manufacturer's support group or bulletin board and update your drivers to the latest available revisions.

Setting Audio Record Gain

IN3 Voice Command requests and receives digital data from your audio board in the same manner as if you were making a recording.  Since various audio boards have different sampling rates and sample size, IN3 automatically uses the best rate and sample size available from each board.

Sampling rate and size are selected by IN3 in the following order:

1.  8KHz  16 bit         (preferred)

2.  11KHz 16 bit

3.  8KHz  8 bit

4.  11KHz 8 bit          (least preferred)

If your record/playback tool permits adjustment of sampling rate and sample size, pick the most preferable rate and size available according to the listing above.

Use the record and playback tool provided with your audio board to make a test recording.  Then use the audio record gain adjustment or "mixer" supplied with your board to adjust the gain for optimum performance.

Speaking in a normal and relaxed voice, record a one or two second test message.  Play the message back and note whether the signal is clear and strong or weak and distorted.  The best setting is the one which produces the strongest undistorted signal with the least hum, static or background noise.  If your record/playback tool provides a graphic representation of the recording, set your record gain so the loudest peaks created in your normal speaking voice just approach, but do not reach, the upper and lower limits of your wave form viewer.  If background noise or system noise is excessive at this gain setting, either reposition the microphone closer to your mouth or reduce the record gain setting, or do both.

Be sure to save the gain setting using the save utility included with your audio board.  This will insure that the record gain is set to the same value each time you start up.

When you have finished setting the record gain, exit from the record/playback application.  This will permit IN3 Voice Command to request and receive audio data from the board.

The microphones which are provided with audio boards can be used with IN3 Voice Command if you exercise a little care.  Testing indicates that optimum performance is achieved when voice templates are created with the mike positioned 4 to 6 inches from the speaker's mouth.

Running The Demo

Double click on the IN3 Voice Command Icon.  The IN3 Status Window opens and the demo commands are listed.

Templates must be built prior to using the demo commands.  Proceed with Building Templates to record yourvoice patterns for each of the commands.


First Time Templates
Building Templates

Select the Edit button, and then select the Build Templates option to create your voice templates for each command in the demo lexicon.

When the Build Templates window opens, two mode selections appear.  IN3 defaults to either ALL or SELECTED mode depending on whether it senses that some templates already exist or there are none.  In SELECTED mode, the system will prompt you to build templates only for those commands needing templates.  If you wish to replace some but not all existing command templates with new ones, highlight the commands in the Status Window before entering the Build Templates Window and then use Selected Mode.

Position your microphone, then in CREATE mode click on Begin. You will be prompted to repeat each command twice.  When you have spoken all commands twice, you will then be prompted to repeat each command one more time.

The Begin button becomes a Pause/Resume button, for use if you are interrupted.

In order to optimize the template data, you are required to provide a somewhat stronger audio signal when you are Building or Refining templates.  When in recognition mode you will be able to speak more softly and you will still obtain very good performance.  If during the process of building or refining templates, IN3 receives a weak signal, the build process will be suspended and a message "Audio Input Level Is Too Low" will appear.  Either reposition the microphone so it is closer to your mouth or speak more loudly in order to provide a stronger signal.

Operation

Once all templates have been created, you are ready to test recognition.  Do not Exit from the IN3 Status Window.  If you Exit the IN3 Status Window, IN3 Voice Command will shut down.

IN3 may be minimized to an icon which will not shut it down.

The Status Window contains a list of the commands in the lexicon for use as a reminder.  Notice that the Status line at the bottom of the window says Recognition is active.  As you test recognition by speaking commands, the Status line will indicate each command that is recognized.

The first command in the Status Window, _MICROPHONE, is your voice operated microphone switch.  When IN3 loads a lexicon, the microphone is on and the lips in the upper right hand corner are red.  Say "Microphone" and the switch is turned off.  The lips change from red to black indicating the microphone is off.  Say "Microphone" again to turn the mike back on and the lips return to red.  A beep also sounds when the microphone switch is activated.

One beep indicates the switch has been turned off and two beeps signal it has been turned back on.

Testing IN3 Voice Command

Test the commands to verify that Calendar, Clock, Calculator, etc.  are working.  Then manipulate the windows by using the commands.

Voice template features are established by energy patterns rather than frequencies, so there is no need to speak in a monotone. Test this aspect of the IN3 System performance by saying a few of the commands with different pitches.

The IN3 System will recognize a command even though it is embedded in a continuous sentence.  To test this, say, "Give me the calendar please."  If you spoke naturally when you created the voice template for calendar, the system will recognize and execute calendar even though it is embedded in a sentence.

The demo includes some commands for formatting text within the Windows Write application.  When you say "Write", IN3 gives you immediate access to Write.  Enter some sample text and then highlight it using the mouse.  Speak some of the Write formatting commands to see how fast and convenient voice macro command input is for document preparation.  The Write commands in the demo lexicon are:

BOLD	ITALIC	REGULAR

SMALLER	LARGER

JUSTIFY LEFT	CENTER	JUSTIFY RIGHT

Tips on IN3 Recognition

New users sometimes try to "help" IN3 by speaking loudly and very distinctly when building templates and testing.  As a result, the templates may work fine while testing but later in normal use when the user is relaxed and speaking softly, some commands may not be recognized.  So when building templates try to relax and speak normally.

If IN3 Voice Command tends to falsely recognize one or more commands, the template(s) probably contain noise.  To correct this, use the mouse to highlight the command in the IN3 Status Window.  Select Edit from this window, choose Build Templates, select Create Mode, and create a new template.  For best results, do this at a quiet time and position the mike so it picks up a good strong signal.

If creating a new template does not correct the problem, your record gain may be set too high.  Try reducing the gain until the problem is solved.


Software License Agreement
LICENSE AGREEMENT

Subject to the provisions contained herein, Command Corp. Inc. ("Command") hereby grants to you a nonexclusive license to use its proprietary computer software product ("Software") contained in this package.  As described below, your use of the Software, when enabled, is limited to a "Number" of simultaneous users.

SOFTWARE AND DOCUMENTATION.  Command shall furnish the Software to you on media in machinereadable object code form and may also provide Command's standard documentation ("Documentation") containing instructions for operation and use of the Software.

LICENSE AUTHORIZATION CODE.  A license authorization code, which enables the Software, may be included.  If an authorization code is not included, and is applicable for the Software, Command or its designee shall provide you with an authorization code(s) corresponding to the number ("Number") and type of licenses listed on your purchase order or Command's sales order or invoice.

LICENSE TERM AND CHARGES.  The term of this license commences upon delivery of the Software to you and is perpetual unless earlier terminated upon default by one of the parties or as otherwise set forth herein.  The license fee corresponds to the Number of concurrent users.  If a number greater than one (1) applies to the Software and you desire to increase the size of the Number, then you may do so by notifying your place of purchase of your desired Number or Number increase, and paying to your place of purchase the applicable price.  Your place of purchase will then provide you with an authorization code(s).

TITLE.  Title, and ownership right, and intellectual property rights in and to the Software and Documentation shall remain in Command and/or in suppliers to Command of programs contained in the Software.  The Software is provided for your own internal use under this license.  This license does not include the right to sublicense and is personal to you and therefore may not be assigned (by operation of law or otherwise) or transferred without the prior written consent of Command.  You acknowledge that the Software in source code form remains a confidential trade secret of Command and/or its suppliers and therefore you agree not to attempt to decipher or decompile the Software or develop source code for the Software or knowingly allow others to do so.  You also agree not to develop authorization code(s) to alter the Number, or to determine how Command develops such authorization code(s).

UPDATES.  This license does not grant you any right, license, or interest in and to any improvements, modifications, enhancements, or updates to the Software and Documentation.  Updates, if available, may be obtained by you at Command's then current standard pricing, terms and conditions.

LIMITED WARRANTY.  Command warrants that for a period of ninety (90) days from the date you purchased a license to it, the Software, if operated as directed will substantially achieve the functionally described in the Documentation.  Command does not warrant, however, that your use of the Software will be uninterrupted or that the operation of the Software will be errorfree.  Command also warrants that the media containing the Software, if provided by Command, is free from defects in material and workmanship and will so remain for ninety (90) days from the date you purchased a license to it.  Command's sole and exclusive obligation and liability for any breach of this warranty shall be in Command's sole discretion:  (i) to replace your defective media; or (ii) to repair or correct your defective media so that it will conform to the above warranty; (iii) to advise you how to achieve substantially the same functionality with the Software as described in the Documentation through a procedure different from that set forth in the Documentation; or (iv) to refund the purchase price paid by you for the license to the defective Software, or if longer, for thirty (30) days after the date (a) of shipment to you of the repaired or replaced Software, or (b) Command advised you how to operate the Software so as to avoid the difficulty that you were having in achieving functionality.  Only if you inform Command of your problem with the Software during the applicable warranty period will Command be obligated to honor this warranty.  You must contact Command by telephone or by letter to inform Command of the problem.  THIS IS A LIMITED WARRANTY AND IT IS THE ONLY WARRANTY MADE BY COMMAND.  COMMAND MAKES NO OTHER EXPRESS OR IMPLIED WARRANTY AND EXPRESSLY DISCLAIMS ALL WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.  NO COMMAND DEALER, AGENT, OR EMPLOYEE IS AUTHORIZED TO MAKE ANY MODIFICATIONS, EXTENSIONS, OR ADDITIONS TO THIS WARRANTY.  If any modifications are made to the Software by you during the warranty period; if the media is subjected to accident, abuse, or improper use; or if you violate the terms of this Agreement, then this warranty shall immediately be terminated.  This warranty shall not apply if the Software is used on or in conjunction with hardware or programs other than the unmodified version of hardware and programs with which the Software was designed to be used as described in the Documentation.

SOME STATES OR JURISDICTIONS DO NOT ALLOW THE EXCLUSION OF IMPLIED WARRANTIES, SO THE ABOVE EXCLUSION MAY NOT APPLY TO YOU.  THIS WARRANTY GIVES YOU SPECIFIC LEGAL RIGHTS AND YOU MAY ALSO HAVE OTHER RIGHTS WHICH VARY BY STATE OR JURISDICTION.

RESTRICTED USE.  If the Software is provided for demonstration and evaluation purposes, it may be used by you for no longer than thirty (30) days (or such longer period authorized by Command in writing), in order for you to determine whether to purchase a license to enabled Software.  The Software and Documentation shall be used exclusively by you and your qualified employees and consultants.  An employee or consultant is qualified only if s/he has executed an agreement or else is otherwise bound to abide by the restrictions imposed upon you herein under "Title" and "Restricted Use."  Unless the Number is greater than one (1), you may use the Software on only one (1) single computer at any time (a "computer" hereby defined as one (1) workstation and associated peripheral equipment, all at one (1) location.  No more than the Number may use the Software concurrently.  Command hereby consents to your making a reasonable number of backup or archival copies of the Software.  All such copies shall be subject to this Agreement and shall contain all of Command's notices regarding copyrights, trademarks, other proprietary rights  that are contained in the Software Command originally provided to you.  You may not modify, disassemble or reverse engineer the Software or make derivative or compilation works of the Software.

LIMITATION OF LIABILITY.  Your sole and exclusive remedies for any damage or loss in any way connected with the Software, whether by Command's breach of any express or implied warranty, negligence, or any breach of any other duty, shall be, at Command's option, repair or replacement of the Software or return for credit or refund of Command's price for a license to such Software or Documentation.  Under no circumstances and under no legal theory, tort, contract, or otherwise, shall Command be liable to you or any other person for any indirect, special, incidental, or consequential damages of any character including, without limitation, damages for loss of goodwill, work stoppage, computer failure or malfunction, or any and all other commercial damages or losses, or for any damages in excess of Command's price for a license to the Software and Documentation, even if Command shall have been informed of the possibility of such damages, or for any claim by any other party.  Command's third party program suppliers make no warranty, and have no liability whatsoever, to you.

SOME STATES AND JURISDICTIONS DO NOT ALLOW THE LIMITATION OR EXCLUSION OF LIABILITY FOR INCIDENTAL OR CONSEQUENTIAL DAMAGES SO THE ABOVE LIMITATIONS OR EXCLUSIONS MAY NOT APPLY TO YOU.

TERMINATION.  Either party may terminate this Agreement immediately in the event of default by the other party.  Upon any termination of this Agreement, you shall immediately discontinue the use of the Software and shall within ten (10) days return to Command all copies of the Software and Documentation.  You may also terminate this Agreement at any time by destroying the Software and Documentation and all copies thereof.  Your obligations to pay accrued charges and fees shall survive any termination of this Agreement.

MISCELLANEOUS.  This Agreement represents the complete and exclusive statement of the agreements concerning this license between the parties and supersedes all prior agreements and representations between them.  It may be amended only by a writing executed by both parties.  THE ACCEPTANCE OF ANY PURCHASE ORDER PLACED BY YOU FOR THE SOFTWARE AND/OR DOCUMENTATION IS EXPRESSLY MADE CONDITIONAL ON YOUR ASSENT TO THE TERMS AND CONDITIONS SET FORTH HEREIN, AND COMMAND AGREES TO FURNISH THE SOFTWARE AND DOCUMENTATION ONLY UPON THESE TERMS AND CONDITIONS AND NOT THOSE CONTAINED IN YOUR PURCHASE ORDER.  If any provision of this Agreement is held to be ineffective, unenforceable, or illegal under certain circumstances for any reason, such decision shall not affect the validity or enforceability (i) of such provision under other circumstances or (ii) of the remaining provisions hereof under all circumstances and such provision shall be reformed to and only to the extent necessary to make it effective, enforceable, and legal under such circumstances.  All headings are solely for convenience and shall not be considered in interpreting this Agreement.  This Agreement shall be governed by and construed under Georgia law as such law applies to agreements between Georgia residents entered into and to be performed entirely within Georgia, except as required by U.S. Government rules and regulations to be governed by Federal law.

U.S. Government Restricted Rights

Use, duplication or disclosure by the Government is subject to restrictions set forth in subparagraph (a) through (d) of the Commercial ComputerRestricted Rights clause at FAR 52.22719 when applicable, or in subparagraph (c) (1) (ii) of the Rights in Technical Data and Computer Software clause at DFARS 252.2277013, and in similar clauses in the NASA FAR Supplement.  Contractor/manufacturer is Command Corp. Inc., 3761 Venture Drive, Duluth, GA 30136.


Demo Dialog
IN CUBE Demonstration Mode

Welcome to the IN CUBE DEMO.

The full working IN CUBE system handles lexicons of up to 75 commands each and runs with any Windows-compatible audio board on 386 and higher powered machines.  Any of the 75 commands may be used to execute the "Open" function to start up another lexicon of up to 75 commands so there is abundant capacity.  IN CUBE operated in demo mode gives the user several lexicons of voice commands for use with popular Windows applications.  The IN CUBE demo is launched with a lexicon of 20 voice commands for use with popular Windows desktop utilities.  This lexicon also includes some frequently used formatting commands for the Write application.  Demo lexicons consisting of 26 commands for WordPerfect and Word are also included.

This new expanded demo illustrates the speed and convenience of voice window navigation and voice macro command input.  It also introduces a new powerful set of command functions which make it easy to perform complex operations by voice command.

We hope you will find the voice commands in the demo to be fun and useful.  And of course, we hope you will also order a license for the full IN CUBE Voice Command product.

To start IN CUBE in Demo mode, click on Demo.


IN CUBE Registration
Registration

Registering IN CUBE Voice Command

If you would like to purchase a license and unlock the full working IN CUBE Voice Command product, please review the license agreement located under the Help menu.  Then, from the Option menu, select Registration and check the box "Read and accepted license".

Enter your full name on the "Full Name" line.  Then enter at least one line of information about yourself (company name, address, phone number, etc...) on the "Location" lines.  Each line may be up to 128 characters long.

To order by telephone, enter the information described above, then click on the "New key" button.  IN CUBE will generate and display a request key based on the information you have entered.  To register IN CUBE, call Command Corp. Inc. at 404-813-8030 with your registration information, request key, and credit card information.  Operators will take your order and issue a license key that will unlock your product.

If you wish to order by FAX, Mail, or E-Mail, click on the "Order form" button to generate a file, order.txt, which contains all of the information from the Registration window.  The "order.txt" file is written to the directory in which you installed IN CUBE Voice Command.  This file contains further instructions on how to order a license key for IN CUBE Voice Command via FAX, mail or E-Mail.  The file contains an order form for customer information and payment information.  Do not alter anything within the "Registration block".  If you change anything, the registration information will not be valid and a key cannot be generated!

When you receive your license key from Command Corp, reenter the Registration screen and verify that all of the information ramains the same as that which you submitted to Command Corp., including the request key.  Correct any descrepancies by typing over any incorrect or altered information.  Enter your license key in the "License key" box and select the "Enter key" button.

If everything has been entered correctly, IN CUBE voice command will now be licensed and ready to go.  Just select "Cancel" to exit this window and start using IN CUBE to it's fullest!


Registering by E-Mail
Ordering IN CUBE via Internet E-Mail

When ordering a license key by E-Mail, please fill out the customer information block and payment information block in the file order.txt.  You may delete all of the information above the line which says "Cut Here" in this text file.

When ordering via E-Mail, we ask that you encrypt your order as a way of protecting your credit card information.  Internet E-Mail is not a confidential media.  Sending credit card numbers without encrypting is highly risky to you and no guarentees can be made that your message will not be intercepted by unauthorized persons who might abuse your credit account!  Encrypting with a strong encryption system such as PGP is the safest way to convey credit information over the Internet.

We ask that you encrypt the order form, order.txt, using PGP (Pretty Good Privacy) version 2.6 or above.  Non-commercial versions of PGP are available from Compuserve as well various other online services.  PGP may also be downloaded from several ftp sites and numerous BBSs around the world.  A commercial version of PGP is available from Viacrypt.  Command Corp does not accept other forms of encryption at this time.

Command Corp's public encryption key is embedded in the order form and may be used directly by PGP.  The key may be added to your public keyring by the command "pgp -ka order.txt" if you so desire.  The Command Corp key is also available from the public key servers around the world for verification.  As an optional added security measure, we would appreciate your signing your order with your own PGP key.  Signing with your PGP key is optional and it is not required to process your order.

E-Mail your completed and encrypted order form to "in3@gacc.atl.ga.us".  Your license key will be returned to you via E-Mail.  We do request your telephone number be included on the order form in case there is difficulty returning E-Mail to you.


Registering by FAX
Ordering IN CUBE via FAX

When ordering a license key by FAX, fill out the customer information block and payment information block in the file order.txt.  Then delete all of the information above the line which says "Cut Here" in the file and print the remainder.  The form will be one page of information when printed in a courier 10 pitch font.  Please sign the form and Fax it to Command Corp. Inc. at 404-813-0113.  Be sure to include your return FAX number and your telephone number.  You will receive your license key by return FAX, unless you request some other method.


Release Notes
IN CUBE Voice Command

for MS-Windows

Release Notes

Version 1.14

November 22, 1994

Release Notes:

These release notes describe the expanded features of IN CUBE and serve to supplement the documentation.

The release notes, in "Write" format, are installed with the sample lexicons as the file "release.wri".  An ascii text version is installed as the file, "release.txt".  The release notes are also now available within IN CUBE's on-line help system.

Microphone Connections

Microphone connections vary among audio boards. Check the board manufacturer's documentation. Listed below is some information on popular boards.

SoundBlaster  Dynamic and electret (selfpowered) microphones with 2 or 3 conductor plugs will work.

Microsoft Sound System Dynamic microphones don't work with this audio board. This board uses a uniquely wired condenser microphone which is powered from the jack.

MediaVision  The Pro Audio Basic board has mono microphone input. A 3 conductor plug will not work. If you are using a microphone with a 3 conductor plug like the AudioTechnica PRO 8 supplied by Command Corp., use a stereo to mono adapter. Radio Shack Cat. No. 274368.

Logitech Soundman  Same as MediaVision.

Command Keystrokes:

When entering key sequences into the "keystrokes" field, keep in mind that the characters associated with control keys are case sensitive.  For instance, entering a "{Ctrl}b" results in a lower case "b" with the control key depressed.  Upper case characters are expressed as shifted characters.  Entering a "{Ctrl}B" results in a "b" with BOTH the control and shift keys depressed.  Some applications will perform different actions for these two different cases.

The "Other keys" scroll list in the lexicon edit windows contains three options for executing an "Enter".  The "Enter" selection chooses the keypress for the "Enter" key adjacent to the "qwerty" keys.  The "Num Enter" selection chooses the keypress for the "Enter" key located on the numeric key pad.  The "Return" selection enters the code for an ascii "Carriage Return".  This "Carriage Return" is also equivalent to a "{Ctrl}m".  Use the "Return" selection to perform a carriage return for applications running in a DOS command shell window.

Class Identifiers:

Class identifiers are defined when an application registers one or more "window classes".  Class identifiers are used by the "class" command in command mode for locating windows to be raised or opened.

To determine the class name of a window, click the left mouse button on the "Window Class" button located in right side of the "New Command" and "Update Command" dialogue windows.  The cursor will then change to cross-hairs.  Move the cross-hairs to the title bar or icon of the desired window.  Clicking any mouse button will then enter the class name of the window into the keystroke line.  See the IN CUBE on-line help entry on "Window Class" for more information.

Audio Device Drivers:

Some device drivers and audio subsystems provided by various manufactures do not permit opening the audio wave input device immediately after closing the audio wave output device without yielding the processor in between.  IN CUBE has been enhanced to work with these drivers by avoiding the conditions which cause these drivers to fail.

Some audio device drivers introduce an inordinate amount of time when switching directly from input mode (record) to output mode (playback).  This can introduce an unacceptable delay associated with the microphone "beep" as the voice operated microphone switched is turned on and off.  To work with these audio drivers, the audio beeps may be disabled from the menu selection "options->beeps->microphone".  The status of the microphone switch can be determined by observing the color of the lips icon.

Audio Device Access Contention:

Most audio device drivers do not permit "sharing" the audio device.  Also, due to hardware limitations on most boards, the audio input (record) and audio output (playback) are mutually exclusive.  The standard access arbitration convention to such exclusive devices normally follows an "acquire and hold" methodology which means that an application acquires or opens the audio device and holds it while in use.  Other applications requesting service from the device get an error when trying to open indicating that the resource is already allocated.

IN CUBE now utilizes a "yield on demand" convention for arbitrating access contention for the audio devices.  When another application requests service from either the audio input or audio output device, IN CUBE voluntarily surrenders the audio device.  This occurs transparent to the other application, requiring no specialized protocol or knowledge on the part of the other application.  When the other application is finished with the audio device and returns the resource to the system, IN CUBE then reacquires the audio device for it's own use once again.

This has the effect of permitting any arbitrary system module or application, unrestricted access to the audio input (wave-in) and audio output (wave-out) devices while maintaining the operation of the speech recognition subsystem.  When the audio input is allocated to another application, the recognition subsystem is in a stand-by mode and recognition is disabled.  For boards and device drivers enforcing mutual exclusion of audio input and audio output, this also applies when the audio output is allocated to another application.

When the audio input is not enabled for IN CUBE to utilize, the microphone disappears from the lips on the IN CUBE icon.  If the system uses the audio board to "beep" or if another application requests the audio device for playing sounds or recording messages, the microphone disappears and recognition is disabled until the audio device becomes available for IN CUBE once again.

Copyright© 1994 Command Corp. Inc.